In recent years, in a variety of technological fields such as high-speed communication processing, digital image processing, and fuzzy control processing; the use of an arctangent calculation apparatus has become necessary for carrying out speedy calculation and output of phase angles from two-dimensional vector values.
However, as far as conventional arctangent calculation apparatuses are concerned, the demand for speedy calculation and output leads to an increase in the circuit size.
In regard to that problem, conventional arctangent calculation apparatuses include, for example, a technology has been disclosed in which the circuit size is limited by performing repetitive implementation of the coordinate rotation digital computer (CORDIC) algorithm.
Moreover, a technology has been disclosed in which a read only memory (ROM) table is created for managing phase angles corresponding to two-dimensional vector values and then a phase angle is output according to an input two-dimensional vector value.
However, in the case of using a ROM table, the volume of data to be managed therein increases substantially. Hence, it becomes necessary to increase the memory size in the ROM table thereby leading to an increase in the circuit size.
In regard to such a problem, as a technology disclosed in recent years for reducing the volume of data in a ROM table and controlling the circuit size, the logarithm of two-dimensional vector values is obtained or the degree of accuracy is lowered except for the necessary value range.
Furthermore, as a conventional arctangent calculation apparatus, a technology has been disclosed for limiting the circuit size by maintaining, as a table, arctangent function arctan(x)−x instead of arctangent function arctan(x) and performing addition of an input value x with respect to the result of arctangent function arctan(x)−x to obtain the arctangent result.
Besides, as a compromise plan between using the CORDIC algorithm and using a ROM table, a technology has been disclosed that implements a calculation method for speedy convergence in a small table with the use of an addition theorem.
Moreover, as a conventional arctangent calculation apparatus, a method has been disclosed for converting two-dimensional vector values corresponding to in the range of 0° to 360° into two-dimensional vector values corresponding to in the range of 0° to 45° in order to control the value range that is input to an arctangent calculation unit.
Furthermore, as a conventional arctangent calculation apparatus, a technology has been disclosed that implements a method of calculating arctangent function arctan(α) by straight-line approximation. In that method, α=y÷x is calculated with respect to a two-dimension vector value (X, Y) and, if the value of α is within a predetermined range, it is determined that approximation is done to a specific straight line.
The conventional technologies as described above are disclosed in for example Japanese Laid-open Patent Publication Nos. 54-104249, 58-500044, 10-308714, 04-111019, 02-232724, 2000-99314, 2002-9856, 2003-92607, 05-347643, 2000-155672 and 58-178478.
In a conventional arctangent calculation apparatus, upon conversion of a two-dimensional vector value corresponding to in the range of 0° to 360° into a two-dimensional vector value corresponding to in the range of 0° to 45°; the arctangent calculation unit outputs, from a phase angle ROM, a phase angle corresponding to the two-dimensional vector value corresponding to in the range of 0° to 45°.
However, in a conventional arctangent calculation apparatus, an enormous volume of data is managed in the phase angle ROM that is used in managing phase angles corresponding to the two-dimensional vector values corresponding to in the range of 0° to 45°. For that reason, the memory size of the phase angle ROM is large thereby leading to an increase in the circuit size.